Efficiently Computing Data-Independent Memory-Hard Functions
نویسندگان
چکیده
A memory-hard function (MHF) f is equipped with a space cost σ and time cost τ parameter such that repeatedly computing fσ,τ on an application specific integrated circuit (ASIC) is not economically advantageous relative to a general purpose computer. Technically we would like that any (generalized) circuit for evaluating an iMHF fσ,τ has area × time (AT) complexity at Θ(σ ∗ τ). A data-independent MHF (iMHF) has the added property that it can be computed with almost optimal memory and time complexity by an algorithm which accesses memory in a pattern independent of the input value. Such functions can be specified by fixing a directed acyclic graph (DAG) G on n = Θ(σ ∗τ) nodes representing its computation graph. In this work we develop new tools for analyzing iMHFs. First we define and motivate a new complexity measure capturing the amount of energy (i.e. electricity) required to compute a function. We argue that, in practice, this measure is at least as important as the more traditional AT-complexity. Next we describe an algorithm A for repeatedly evaluating an iMHF based on an arbitrary DAG G. We upperbound both its energy and AT complexities per instance evaluated in terms of a certain combinatorial property of G. Next we instantiate our attack for several general classes of DAGs which include those underlying many of the most important iMHF candidates in the literature. In particular, we obtain the following results which hold for all choices of parameters σ and τ (and thread-count) such that n = σ ∗ τ . • The Catena-Dragonfly function of [FLW13] has AT and energy complexities O(n). • The Catena-Butterfly function of [FLW13] has complexities is O(n). • The Double-Buffer and the Linear functions of [CGBS16] both have complexities in O(n). • The Argon2i function of [BDK15] (winner of the Password Hashing Competition [PHC]) has complexities O(n log(n)). • The Single-Buffer function of [CGBS16] has complexities O(n log(n)). • Any iMHF can be computed by an algorithm with complexities O(n/ log1− (n)) for all > 0. In particular when τ = 1 this shows that the goal of constructing an iMHF with AT-complexity Θ(σ ∗ τ) is unachievable. Along the way we prove a lemma upper-bounding the depth-robustness of any DAG which may prove to be of independent interest.
منابع مشابه
Balloon Hashing: a Provably Memory-Hard Function with a Data-Independent Access Pattern
We present the Balloon algorithm for password hashing. This is the first cryptographic hash function that: (i) has proven memoryhardness properties in the random-oracle model, (ii) uses a passwordindependent access pattern, and (iii) meets—and often exceeds—the performance of the best heuristically secure password-hashing algorithms. Memory-hard functions require a large amount of working space...
متن کاملBalloon Hashing: A Memory-Hard Function Providing Provable Protection Against Sequential Attacks
We present the Balloon password-hashing algorithm. This is the first practical cryptographic hash function that: (i) has proven memory-hardness properties in the random-oracle model, (ii) uses a password-independent access pattern, and (iii) meets or exceeds the performance of the best heuristically secure password-hashing algorithms. Memory-hard functions require a large amount of working spac...
متن کاملEffects of cognitive functions on feedback request strategy and learning of a perceptual motor task
Taking individuals' cognitive abilities into consideration can play an important role in the initial stages of learning motor skills. So, the purpose of the present study was to investigate the effect of cognitive functions on feedback request strategy and learning of a perceptual motor task. A number of 60 university male students with a mean age of 22/4 years (SD = 1/99) were selected through...
متن کاملFast and Tradeoff-Resilient Memory-Hard Functions for Cryptocurrencies and Password Hashing
Memory-hard functions are becoming an important tool in the design of password hashing schemes, cryptocurrencies, and more generic proof-of-work primitives that are x86-oriented and can not be computed on dedicated hardware more efficiently. We develop a simple and cryptographically secure approach to the design of such functions and show how to exploit the architecture of modern CPUs and memor...
متن کاملThe Development of Reading and Operation Span Tasks in Persian as Measures of Working Memory Capacity for Iranian EFL Learners
This paper presented two complex span tasks in Persian as measures of working memory capacity (WMC). Firstly, the construct of working memory (WM) and possible WM measures that could assess this construct efficiently were critically reviewed. Accordingly, as measures of domain-general components of WM, a reading span task and an operation span task which were documented to assess this construct...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- IACR Cryptology ePrint Archive
دوره 2016 شماره
صفحات -
تاریخ انتشار 2016